UNPKG

@rsc-labs/medusa-store-analytics-v2

Version:
49 lines 6.18 kB
"use strict"; /* * Copyright 2024 RSC-Labs, https://rsoftcon.com/ * * MIT License * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.GET = void 0; const utils_1 = require("@medusajs/utils"); const store_analytics_1 = require("../../../../modules/store-analytics"); const GET = async (req, res) => { const kind = req.params.kind; const dateRangeFrom = req.query.dateRangeFrom; const dateRangeTo = req.query.dateRangeTo; const dateRangeFromCompareTo = req.query.dateRangeFromCompareTo; const dateRangeToCompareTo = req.query.dateRangeToCompareTo; const orderStatusesFromQuery = req.query.orderStatuses; const orderStatuses = orderStatusesFromQuery !== undefined ? orderStatusesFromQuery.map(status => utils_1.OrderStatus[status.toUpperCase()]).filter(orderStatus => orderStatus !== undefined) : []; let result; const storeAnalyticsModuleService = req.scope.resolve(store_analytics_1.STORE_ANALYTICS_MODULE); try { switch (kind) { case 'history': result = await storeAnalyticsModuleService.getOrdersHistory(orderStatuses, dateRangeFrom ? new Date(Number(dateRangeFrom)) : undefined, dateRangeTo ? new Date(Number(dateRangeTo)) : undefined, dateRangeFromCompareTo ? new Date(Number(dateRangeFromCompareTo)) : undefined, dateRangeToCompareTo ? new Date(Number(dateRangeToCompareTo)) : undefined); break; case 'count': result = await storeAnalyticsModuleService.getOrdersCount(orderStatuses, dateRangeFrom ? new Date(Number(dateRangeFrom)) : undefined, dateRangeTo ? new Date(Number(dateRangeTo)) : undefined, dateRangeFromCompareTo ? new Date(Number(dateRangeFromCompareTo)) : undefined, dateRangeToCompareTo ? new Date(Number(dateRangeToCompareTo)) : undefined); break; case 'payment-provider': result = await storeAnalyticsModuleService.getOrdersPaymentProviderPopularity(dateRangeFrom ? new Date(Number(dateRangeFrom)) : undefined, dateRangeTo ? new Date(Number(dateRangeTo)) : undefined, dateRangeFromCompareTo ? new Date(Number(dateRangeFromCompareTo)) : undefined, dateRangeToCompareTo ? new Date(Number(dateRangeToCompareTo)) : undefined); break; } res.status(200).json({ analytics: result }); } catch (error) { throw new utils_1.MedusaError(utils_1.MedusaErrorTypes.DB_ERROR, error.message); } }; exports.GET = GET; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL29yZGVycy1hbmFseXRpY3MvW2tpbmRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7OztHQVVHOzs7QUFNSCwyQ0FBNEU7QUFDNUUseUVBQTZFO0FBR3RFLE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBa0IsRUFDbEIsR0FBbUIsRUFDbkIsRUFBRTtJQUVGLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQzdCLE1BQU0sYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO0lBQzlDLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQzFDLE1BQU0sc0JBQXNCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQztJQUNoRSxNQUFNLG9CQUFvQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUM7SUFDNUQsTUFBTSxzQkFBc0IsR0FBYSxHQUFHLENBQUMsS0FBSyxDQUFDLGFBQXlCLENBQUM7SUFFN0UsTUFBTSxhQUFhLEdBQWtCLHNCQUFzQixLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBQ3pFLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLG1CQUFXLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUUvSCxJQUFJLE1BQU0sQ0FBQztJQUNYLE1BQU0sMkJBQTJCLEdBQWdDLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLHdDQUFzQixDQUFDLENBQUE7SUFFMUcsSUFBSSxDQUFD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